/*
 * Copyright Aduna (http://www.aduna-software.com/) (c) 1997-2007.
 * Copyright James Leigh (c) 2006.
 *
 * Licensed under the Aduna BSD-style license.
 */
package edu.tju.rdfbase.query.algebra.evaluation;

import edu.tju.rdfbase.query.BindingSet;
import edu.tju.rdfbase.query.algebra.QueryModel;
import edu.tju.rdfbase.query.algebra.evaluation.impl.EvaluationStrategyImpl;
import edu.tju.rdfbase.store.StoreException;

/**
 * Interface used by {@link EvaluationStrategyImpl} prior to evalutating the
 * query.
 * 
 * @author James Leigh
 * @author Arjohn Kampman
 */
public interface QueryOptimizer {

	public void optimize(QueryModel query, BindingSet bindings)
		throws StoreException;

}